1. Field of the Invention
The present invention relates to the field of data processing. More specifically, embodiments of the present invention relate to providing a mechanism for a mobile wireless electronic device (e.g., a portable computer system, a palmtop computer system, or any other hand-held electronic device that utilizes a display screen, such as a cell phone, a pager, etc.) to provide and process location based information.
2. Related Art
As the components required to build a computer system have reduced in size, new categories of electronic devices and computer systems have emerged. One of the new categories of computer systems is the xe2x80x9cpalmtopxe2x80x9d computer system. A palmtop computer system is a computer that is small enough to be held in the hand of a user and can therefore be xe2x80x9cpalm-sized.xe2x80x9d Most palmtop computer systems are used to implement various Personal Information Management (PIM) applications such as an address book, a daily organizer (calendar, datebook, etc.) and electronic notepads, to name a few. Palmtop computers with PIM software have been know as Personal Digital Assistants (PDAs). Many PDAs have a small and flat display screen associated therewith.
In addition to PDAs, other portable electronic devices have display screens, such as cell phones, electronic pagers, remote control devices and other wireless portable devices. All of these devices have been adapted to display short lists of information on the display screens to help the user organize and display information, e.g., phone records.
User convenience is a very important factor for portable electronic devices. Typically, portable electronic devices are employed while the user is on the run, e.g., in business meetings, on business travel, personal travel, in a vehicle, on foot, etc. Because the user may be occupied or busy while using the portable electronic device, the number of user steps or user tasks required in order to access information from an electronic device (or to store information into the electronic device) is crucial for producing a commercially successful and useful product. That is, the more difficult it is to access data from an electronic device, the less likely the user will perform those tasks to obtain the information. Likewise, the easier information is to obtain, the more likely the portable electronic device will be used to obtain that information and the more likely the portable electronic device will become a part of the user""s everyday activities.
Similarly, the more useful the device, the more the device will be used. The functionality of mobile wireless devices is undergoing a transition. Mobile devices are evolving from a single application device with dedicated specific purpose communication channel (for example, a cell phone or pager), to more general-purpose devices with more flexible data communication capabilities. These changes are providing a platform that can be used to convey location relevant information to a mobile user.
More specifically, wireless technology is advancing, both in the number of options that are available for providing connectivity, and in their flexibility to provide general purpose data communication. Different technologies such as cellular technologies (e.g., CDMA, TDMA), LAN access technologies (e.g., IEEE 802.11, HomeRF) and PAN technologies (e.g., BLUETOOTH wireless communication, IR) each address a different set of needs, and provide a different set of potential services. Mobile devices are no longer restricted to one communication channel. Modular mobile devices allow network interfaces to be attached, allowing for unlimited communications configurations. In addition, BLUETOOTH wireless communication technology allows a single mobile device to simultaneously participate in multiple piconets through a single interface.
The above are relevant because the new wireless technologies are changing the ways in which wireless networks will be deployed. For instance, unlike cellular technologies which provide coverage to large geographical areas at expense to both carrier (e.g., equipment, spectrum) and user (e.g., subscription/air time charges), PAN and LAN wireless technologies are cheap and easy to deploy. Range will be limited, coverage will be spotty, but wireless service will be offered free of charge in enterprise and retail environments where the goal is not to collect connection charges, but to provide services to people.
Therefore, the changing wireless environment creates opportunities and challenges for mobile devices to make them more useful in the every day life of their users. The opportunity is to create new services, including location aware services and location aware information delivery. By providing wireless location dependent or location aware services, users with their mobile electronic devices can be made aware of services that are relevant for their location.
Specifically, what is needed is a seamless technology that provides a transparent view of all the resources available to the mobile device. What is also needed is a system in which the resources available on the network include both information (e.g., data, web pages, database records) and services (e.g., including data manipulation/translation, processing, computing, conversion, printing, and storage). Since the mobile device supports many possible applications, and the wireless networks may provide many services, what is needed is a mobile device that can coordinate the available resources with the appropriate applications. Accordingly, embodiments of the present invention provide the above advantages and others not specifically mentioned above but described in the sections to follow.
The present invention includes software to support location based services with respect to a mobile device, e.g., a PDA, that may offer multiple wireless communication mechanisms. The software allows the mobile device the ability to dynamically acquire information about surrounding services and resources. A general method is employed to wirelessly access location sensitive information on an Intranet and have the information seamlessly change as the mobile devices changes its location. The mechanism obtains resources from a network and may present a filtered list to an application resident on the mobile device.
Embodiments of the present invention include a resource proxy (e.g., broker) that can be implemented on a mobile electronic device. This proxy is responsible for collecting information about the available resources currently accessible to the device, and presenting the appropriate resources to the applications on the mobile device. The resource proxy acts as middleware between the pushing of information from the network side, and the pulling of information from the client side. A challenge in implementing a pull system is that the client needs to learn the location of the information it requires. The difficulty of push technology is that the network needs to discover which applications and what information needs to be pushed. The resource proxy serves as a single target for information. Resources are collected on the proxy, and subsets appropriate for specific applications are then transferred to the individual applications. Such subsets are created by filtering such that only those services/information predefined as of interest will be visible to the user.
A method and system are described herein for supporting location based services for a mobile electronic device that supports multiple wireless communication technologies. The mobile device contains a resource proxy for dynamically storing a set of resources that are available to the electronic device and that are location specific, e.g., accessible via a point that is near the electronic device. The resource proxy contains a resource table recording the available resources and a gateway table indicating a pathway for reaching the data. The resource proxy definitions are technology independent with respect to the communication mechanisms required to obtain the data.
Resources are added to the resource proxy via a resource discovery mechanism automatically performed by the mobile device. Multiple network gateways can be defined and each is responsible for requesting and retrieving information for the resource proxy. Network gateways are coupled to network interfaces which provide the logic required to perform wireless communication using particular communication mechanisms, e.g., Bluetooth or wireless LAN, etc. Applications interface with the resource proxy using technology independent commands in order to obtain information from the available resources recorded in the resource proxy. Using the system of the invention, available resources for a particular location are collected via a single process/database on the mobile device and presented to the applications in a uniform way.
More specifically, an embodiment of the present invention is implemented in a mobile electronic device and comprises: a memory resident resource proxy for storing information identifying resources and gateways to access the resources, the information formatted using a universal format that is independent of any communication technology; a first wireless communication interface for maintaining wireless communication with a first external source using a first communication protocol; a second wireless communication interface for maintaining wireless communication with a second external source using a second communication protocol; a first network gateway coupled to the resource proxy and to the first wireless communication interface, the first network gateway for performing automatic resource discovery regarding resources accessible over the first wireless communication interface and for recording the resources with the resource proxy using the universal format; a second network gateway coupled to the resource proxy and to the second wireless communication interface, the second network gateway for performing automatic resource discovery regarding resources accessible over the second wireless communication interface and for recording the resources with the resource proxy using the universal format; and an application program for referencing the resource proxy using the universal format to obtain a list of location based resources.